import { del, get, post } from "@/utils/request";

interface PCountPlan {
    id?: number; // 对应 Java 的 Long 类型
    title?: string; // 对应 Java 的 String 类型
    count?: number; // 对应 Java 的 Integer 类型
    status?: number; // 对应 Java 的 Integer 类型
    updateTime?: Date; // 对应 Java 的 LocalDateTime 类型
}
// 新增
const countPlanAdd = async (plan: PCountPlan) => {
    try {
        return await post<any>("/countPlan/add", plan)
    } catch (error) {
        console.error("计数计划新增操作出现问题: ", error);
    }
}

// 修改
const countPlanUpdate = async (plan: PCountPlan) => {
    try {
        return await post<any>("/countPlan/update", plan)
    } catch (error) {
        console.error("计数计划修改操作出现问题: ", error);
    }
}
// 删除
const countPlanDel = async (taskId: number) => {
    try {
        return await del<any>("/countPlan/delete/" + taskId)
    } catch (error) {
        console.error("计数计划删除操作出现问题: ", error);
    }
}
// 查询
const countPlanList = async (status: number) => {
    try {
        return await get<any>("/countPlan/list/" + status)
    } catch (error) {
        console.error("计数计划查询操作出现问题: ", error);
    }
}
// 计数添加
const countPlanCountIncr = async (taskId: number) => {
    try {
        return await post<any>("/countPlan/incr/" + taskId)
    } catch (error) {
        console.error("计数计划计数操作出现问题: ", error);
    }
}
// 完成
const countPlanOver = async (taskId: number) => {
    try {
        return await post<any>("/countPlan/updateStatus/" + taskId)
    } catch (error) {
        console.error("计数计划计数操作出现问题: ", error);
    }
}

export {
    countPlanCountIncr,
    countPlanList,
    countPlanDel,
    countPlanUpdate,
    countPlanAdd,
    countPlanOver
}